package com.example.group_20.service;

import com.example.group_20.entity.FilesInfor;
import com.example.group_20.entity.Group;
import com.example.group_20.entity.SLogInfor;
import com.example.group_20.entity.Students;
import com.example.group_20.utils.Result;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * @author: 栋
 * @data: 2023/8/12
 * @descriptions:
 */
public interface StudentsService {
    /**
     * @description 学生登录
     * @author
     * @param[1] id
     * @param[2] pwd
     * @return Result
     */
    public Result login(String s_id, String pwd);


    /**
     * @description 登出
     * @author
     * @return Result
     */
    public Result logout();


    /**
     * @description 学生修改信息
     * @author
     * @param[1] students
     * @return Result
     */
    public Result updateInfor(Students students);

    /**
     * @description
     * @author
     * @param[1] students
     * @param[2] newpwd
     * @return Result
     */
    public Result updatePwd(Students students,String newpwd);

    /**
     * @description 显示个人信息
     * @author
     * @param[1] id
     * @return Result
     */
    public Result getInfor(String token);


    /**
     * @description 显示个人信息
     * @author
     * @param[1] id
     * @return Result
     */
    public Result showInfor(String token);

    /**
     * @description 显示小组信息
     * @author
     * @param[1] s_id
     * @return Result
     */
    public Result showGroupInfor(String s_id);


    /**
     * @description 学生上传文件
     * @author
     * @param[1] students
     * @param[2] file
     * @param[3] request
     * @return Result
     */
    public Result subFile(Map<String,Object> mp);

    /**
     * @description 撤销文档
     * @author
     * @param[1] file_id
     * @return Result
     */
    public Result backFile(Map<String,Object>mp);

    /**
     * @description 显示文档信息
     * @author
     * @param[1] group_id
     * @return Result
     */
    public Result showFiles(String token);


    /**
     * @description 显示操作记录
     * @author
     * @param[1] group_id
     * @return Result
     */
    public Result showSOptions(String token);

    public Result sendMsg(Map<String,Object>mp);

    public Result showSendMsg(String token);

    public Result showReciveMsg(String token);

    public Result reply(Map<String,Object> mp);

    public Result selectGroup(Map<String,Object> mp);


}
